package main

import (
	"fmt"
	"strings"
)

func main() {
	//testInt()
	//testStr()
	testUseStr()
}

func testUseStr() {
	//len 长度
	//s := "欢迎学习Go的len()函数"//14个字符
	var s string = "欢迎学习Go的len()函数"
	fmt.Println(len(s)) //输入28
	// + 拼接
	var a string = "窗前明月光,"
	var b string = "疑是地上霜"
	var c string = a + b
	fmt.Println(c)
	//分割
	ips := "100.0.0.1;200.0.01"
	ipsArray := strings.Split(ips, ";")
	fmt.Printf("ipsArray[0]=%v ipsArray[1]=%v", ipsArray[0], ipsArray[1])
	//包含:返回布尔值
	result := strings.Contains(ips, "100")
	fmt.Println(result)

}
func testStr() {
	var a string
	fmt.Printf(a)

	//先声明变量 b 然后将 a 的类型 与值得 赋予 b
	b := a
	fmt.Println(b)

	//万能占位符: %v 可以根据变量类型，自动匹配 占位符
	var c int = 100
	var d string = "hello"
	var f float32 = 3
	var h bool = true
	fmt.Printf("c=%v d=%v f=%v h=%v", c, d, f, h)

	//双引号:符号内 特俗符号是被解析的 例如：占位符 例如 \n 换行符 是 换行的
	x := "sss\n"
	fmt.Println(x) //没打印出 \n

	//反引号
	z := `sss\n` //打印出 \n
	fmt.Println(z)
}
func testInt() {
	var a int8 = 20
	fmt.Println("a = ", a)

	var b int
	b = 11111111111111
	fmt.Println("b = ", b)

	var c float32
	c = 5.6
	fmt.Println("c = ", c)

	//Golang 是强类型语言 不同类型 做运算 赋值 是不被允许的
	//不允许
	var d int
	var e int8 = 5
	d = int(e)
	fmt.Println("c = ", c)
	fmt.Println("d = ", d)

	//占位符
	var aa int
	fmt.Printf("%d", aa) //整数
	fmt.Printf("%x", aa) //十六进制
	fmt.Printf("%f", aa) //浮点型
}
